#include<bits/stdc++.h>
using namespace std;
class rectangle{
	private:
		int length,width;
	public:
		void set(int x,int y){
			length=x;
			width=y;
		}
		int getlength(){
			return length;
		}
		int getwidth(){
			return width;
		}
		int area(){
			return length*width;
		}
		// write your code here......
		string cancover(rectangle b){
			if(this->getlength() >= b.getlength() && this->getwidth() >= b.getwidth()){
				return "yes";
			}else if(this->getlength() >= b.getwidth() && this->getwidth() >= b.getlength()){
				return "yes";
			}else{
				return "no";
			}
		}
};
int main(){
	int l1,w1,l2,w2;
	cin>>l1>>w1>>l2>>w2;
	rectangle a,b;
	a.set(l1,w1);
	b.set(l2,w2);
	cout<<a.cancover(b);
	return 0;
}
/*
描述
给出两个长方形的长和宽（长不一定大于宽），实现长方形类的一个方法，判定前者是否能完全覆盖后者。
输入描述：
输入4个整数，前两个表示第一个长方形的长和宽，后两个表示第二个长方形的长和宽。
输出描述：
如果前者能完全覆盖后者输出"yes"否则输出"no"
*/